<?php
/**
 *  form verbale di contestazione
 * norma centro di costo sono ancora da aggiustare
 */
class Application_Form_VerbaleDiContestazione extends Zend_Form{

    public function init() {
        
        require_once APPLICATION_PATH . '/models/Db/Lib_db.php';
        require_once APPLICATION_PATH . '/models/Db/Utility.php';        
        $handle_lib = new Lib_db();        
        
        // nome form e metodo
        $this->setName("verbale_di_contestazione");
        $this->setMethod('post');
        
        /** id_contestazione	int(10)		UNSIGNED	No	None	AUTO_INCREMENT	 	 	 	 	 	 	
	id_azione_eseguita	int(10)		UNSIGNED	No	None		 	 	 	 	 	 	
	numero_contestazione	varchar(255)	utf8_general_ci		Yes	NULL		 	 	 	 	 	 	
	data	date			No	None		 	 	 	 	 	 	
	id_lib_norma	int(10)		UNSIGNED	No	None		 	 	 	 	 	 	
	id_lib_centro_costo	int(10)		UNSIGNED	No	None		 	 	 	 	 	 	
	importo	decimal(10,2)			Yes	NULL		 	 	 	 	 	 	
	id_utente_creazione_record	int(10)		UNSIGNED	No	None		 	 	 	 	 	 	
	id_utente_modifica_record	int(10)		UNSIGNED	No	None		 	 	 	 	 	 	
	time_creazione_record	datetime			No	None		 	 	 	 	 	 	
	time_modifica_record	datetime			No	None		 	 	 	 	 	 	
	time_disattivazione_record	datetime			Yes	NULL		 	 	 	 	 	 	
	time_eliminazione_record	datetime			Yes	NULL		 	 	 	 	 	 	
	record_attivo	tinyint(3)
         * 
         */

        // numero verbale
        $this->addElement('text', 'numero_contestazione', array(
            'required' => true,
            'label' => 'Numero contestazione: *',
        ));

        // picker ora
        $data = new Zend_Dojo_Form_Element_DateTextBox('data');
        $data->setLabel('Data: *');
        $data->setRequired(true);
        $this->addElement($data);


        //id_norma 
        $categorie = $handle_lib->getLibNorma();
//        echo "<pre>";
//        print_r($categorie);
//        echo "</pre>";        
        $cat = $this->createElement('select', 'id_norma_cat',array('onChange' => 'selNorme(this.value)'));
        $cat->setLabel('Categoria: *');
        /*
        $new_cat = array(); 
        foreach ($categorie as $key => $value) {
            $new_cat[$key]['id_lib_norma'] = $value['id_lib_norma'];
            $new_cat[$key]['categoria']    = $value['categoria'];
        }
        */
        $new_cat = array();
        $new_cat = array('Igiene urbana','Sicurezza alimentare',
                     'Sicurezza alimentare','Igiene pubblica','Randagismo',
                     'Animali d\'affezione e randagismo','BENESSERE ANIMALE');         
        
      
        //$new_cat = Utility::super_unique($new_cat);
        //$new_cat = Utility::array_unique_deep($new_cat);
        //$new_cat = Utility::specified_array_unique($new_cat, 'categoria');
//        echo "<pre>";
//        print_r($new_cat);
//        echo "</pre>";        
        foreach ($new_cat as $value) {
//            $cat->addMultiOptions(array($value['id_lib_norma'] => $value['categoria']));
              $cat->addMultiOptions(array($value => $value));
        }
        $cat->setRequired(true);
        $this->addElement($cat);
        
        //id_norma 
        $norme_v = $handle_lib->getLibNorma();
        $norma_v = $this->createElement('select', 'id_norma_violata',array('onChange' => 'selNorma(this.value)'));
        $norma_v->setLabel('Norma violata: *');
        foreach ($norme_v as $value) {
            $norma_v->addMultiOptions(array($value['id_lib_norma'] => $value['norma_violata']
            ));
        }
        $norma_v->setRequired(true);
        $this->addElement($norma_v);
        
        //id_norma 
        /*
        $norme = $handle_lib->getLibNorma();
        $norma = $this->createElement('select', 'id_norma');
        $norma->setLabel('Norma sanzionatoria: ');
        foreach ($norme as $value) {
            $norma->addMultiOptions(array($value['id_lib_norma'] => $value['norma_sazionamento']
            ));
        }
        $norma->setRequired(true);
        $this->addElement($norma);
        */
        
        //importo 
        $this->addElement('text', 'id_norma', array(
            'readonly'=> true,
            'label' => 'Norma sanzionatoria: ',
        ));     
        
        //importo 
        $this->addElement('text', 'importo', array(
            'required' => true,
            'digits' => true,
            'readonly'=> true,
            'label' => 'Importo (€): *',
        ));
        
        //id_centro_costo 
        $centri_costo = $handle_lib->getLibCentriCosto();
        $cc = $this->createElement('select', 'id_centro_costo');
        $cc->setLabel('Centro di costo:');
        foreach ($centri_costo as $value) {
            $cc->addMultiOptions(array($value['id_lib_centro_costo'] => $value['denominazione']
            ));
        }
        $cc->setRequired(true);
        $this->addElement($cc);         

        
        $this->addElement('hidden', 'id_lib_norma');
        
        //id dell'utente che ha creato e modificato questa anagrafe
        $this->addElement('hidden', 'id_admin');
        
          
        //id_processo_sanzionatorio
        $this->addElement('hidden', 'id_processo');  
                  
        //id_azione
        $this->addElement('hidden', 'id_azione');  
        
        // pulsante invia
        $this->addElement('submit', 'submit', array(
            'ignore' => true,
            'label' => 'Salva',
        ));
    }

}

